Digital Content Design System using Baseline Units to Control Arrangement and Sizing of Digital Content

ABSTRACT

Digital content design system techniques are described using baseline units to control arrangement and sizing of digital content. In one example, a digital content design system receives a user input specifying a number of baselines to be included within an available display area of a page. Baselines are used to align digital content to control arrangement of the digital content within the page, e.g., text. From this, the digital content design system then calculates a baseline unit from a distance used to space adjacent baselines of the number of baselines from each other. This baseline unit is then leveraged by the system as a fundamental unit of measure to control arrangement and/or sizing of digital content in relation to each other.

This application claims priority as a continuation to U.S. patentapplication Ser. No. 15/976,527, filed May 10, 2018, and titled “DigitalContent Design System using Baseline Units to Control Arrangement andSizing of Digital Content,” the entire disclosure of which is herebyincorporated by reference.

BACKGROUND

Digital layout creation systems are typically employed to create layoutsfor digital content designs to achieve a desired output in how digitalcontent within the design is arranged with respect to each other. Inorder to guide creation of the digital content design, the digitallayout creation system may employ a baseline grid that is configured todefine spacing and arrangement of items of digital content within thedigital content design in relation to each other. The baseline grid, forinstance, may be configured to provide a visual guide that is usable toguide placement and sizing of items of digital content in relation toeach other.

Conventional baseline grids, however, are defined based on units ofmeasure that are independent from a page that includes the baselinegrid. Therefore, display characteristics of the digital content designare separated from a page that is to leverage the design. In oneconventional example, display characteristics that include line spacing,font size, and spacing before and after paragraphs are defined using anumber of points, e.g., in which each point corresponds to 1.3 pixels.Likewise, display characteristics such as margins and indents aredefined using standardized units of measure, e.g., using inches orcentimeters.

Therefore, these conventional systems require significant amounts ofmanual calculations by a creative professional in order to determinecorrespondence of each of these display characteristics with respect toa page. For example, it may take a significant amount of calculation todetermine how many points are required between each horizontal line inthe baseline grid to evenly space these lines within an availabledisplay area within the page for a desired number of lines. This isfurther complicated by any subsequent changes that may be made toavailable display area within the page (e.g., to change the page'smargins), which may therefore require the creative professional tomanually recompute these display characteristics. This also results ininefficient use of computational resources of a computing device thatemploys these techniques that may be caused by errors in the manualcomputations and by the creative professional to change the displaycharacteristics. Accordingly, conventional techniques used to createdigital content designs are inefficient both with respect to a creativeprofessional that is tasked with creating the digital content design aswell as in use of computational resources of a computing device toassist in creating the digital content design.

SUMMARY

Digital content design system techniques are described using baselineunits to control arrangement and sizing of digital content. In oneexample, a digital content design system receives a user inputspecifying a number of baselines to be included within an availabledisplay area of a page. Baselines are used to align digital content tocontrol arrangement of the digital content within the page, e.g., text.

From this, the digital content design system then calculates a baselineunit from a distance used to space adjacent baselines of the number ofbaselines from each other. This baseline unit is then leveraged by thesystem as a fundamental unit of measure to control arrangement and/orsizing of digital content in relation to each other. A user input, forinstance, may be received to set an amount of spacing before or after aparagraph, an amount of leading, indent, margins, baseline shift, adocument grid, ruler guides, and so on as units of the baseline grid. Inthis way, the display characteristics may be tied to an actual page usedto display the digital content, which is not possible using conventionaltechniques that are based on standardized units of measure that areindependent of the page.

This Summary introduces a selection of concepts in a simplified formthat are further described below in the Detailed Description. As such,this Summary is not intended to identify essential features of theclaimed subject matter, nor is it intended to be used as an aid indetermining the scope of the claimed subject matter.

BRIEF DESCRIPTION OF THE DRAWINGS

The detailed description is described with reference to the accompanyingfigures. Entities represented in the figures may be indicative of one ormore entities and thus reference may be made interchangeably to singleor plural forms of the entities in the discussion.

FIG. 1 is an illustration of an environment in an example implementationthat is operable to employ digital content design systems and techniquesas described herein that leverage baseline units to control arrangementand sizing of digital content.

FIG. 2 depicts a system in an example implementation showing operationof a digital content design system of FIG. 1 in greater detail asgenerating a digital content design in which baseline units are used toguide arrangement and sizing of digital content within the design.

FIG. 3 is a flow diagram depicting a procedure in an exampleimplementation in which a baseline unit is calculated based on a numberof baselines distributed within a page and used to control displaycharacteristics of digital content within the page.

FIG. 4 depicts a user interface usable to specify a number of baselines.

FIG. 5 depicts a technique to determine spacing and placement ofbaselines within an available content display area of a page.

FIG. 6 depicts a technique to set a baseline unit as a fundamental unitto control display characteristics of a page.

FIG. 7 depicts an example implementation of a user interface to set adocument grid according to a golden ratio.

FIG. 8 depicts a techniques to distribute lines a document grid thatincludes baselines.

FIG. 9 depicts an example implementation of a user interface in whichbaseline units are used to set a text size.

FIG. 10 depicts an example implementation of a page in which baselineunits are used to set sizes and arrangement of digital content.

FIG. 11 depicts an example of automated adjustment of displaycharacteristics of a page of FIG. 10 based on a change in the baselineunit.

FIG. 12 depicts an implementation of automated adjustment of leading asspacing between items of digital content.

FIG. 13 depicts an example user interface usable to assign an amount ofspacing before or after paragraphs using baseline units.

FIG. 14 depicts another example of a display characteristic of font sizethat is defined using baseline units.

FIG. 15 depicts yet another example of a display characteristic of fontsize that is defined using baseline units.

FIG. 16 depicts an example implementation showing use of a baseline unitas preventing unequal spacing left at a top or bottom edge of a pagewhile setting up a baseline grid.

FIG. 17 depicts a prior art examples of leading and spacing values setusing a number of points.

FIG. 18 depicts an example implementation in which baseline units areused to define how much of a gap is disposed between adjacent lines oftext.

FIG. 19 depicts an example implementation in which an amount of spacebefore or after digital content (e.g., a paragraph) is set based onbaseline units.

FIG. 20 depicts an example implementation in which font size is definedusing baseline units.

FIG. 21 depicts an example implementation of addressing unequal spacingof conventional techniques by a layout system.

FIG. 22 depicts an example implementation in which placement of aninitial baseline within a baseline grid is shown.

FIG. 23, for instance, depicts an example implementation in which alayout grid is defined using baseline units as distributed according toa golden ratio.

FIG. 24 depicts an example implementation in which a layout grid isdefined using baseline units as distributed according to a square ratio.

FIG. 25 depicts an example implementation of an option to link adocument grid's distribution to baselines forming a baseline grid.

FIG. 26 depicts an example implementation of a user preference controlby a layout system to automatically adjust margins to align with adocument grid.

FIG. 27 depicts an example implementation in which a document grid isadjusted automatically and without user intervention by the layoutsystem in response to changes in size of an available content displayarea of a page.

FIG. 28 illustrates an example system including various components of anexample device that can be implemented as any type of computing deviceas described and/or utilize with reference to FIGS. 1-27 to implementembodiments of the techniques described herein.

DETAILED DESCRIPTION Overview

Digital content design system techniques are described using baselineunits to control arrangement and sizing of digital content. Thesetechniques and systems support increased computational efficiency of acomputing device and well as increased user efficiency in interactingwith the computing device that incorporates these techniques. To do so,these techniques and systems overcome limitations of conventionaltechniques by basing display characteristics of a page to an availabledisplay area of the page.

In one example, a digital content design system receives a user inputspecifying a number of baselines to be included within an availabledisplay area of a page. Baselines are used to align digital content tocontrol arrangement of the digital content within the page. Text, forinstance, may be arranged based on the baselines such that a bottom ofthe text is aligned to the baselines similar to writing on a rulednotebook. Accordingly, the digital content design system may evenlyspace the number of baselines within an available display area of thepage, e.g., within the margins.

From this, the digital content design system then calculates a baselineunit from a distance used to space adjacent baselines of the number ofbaselines from each other. This baseline unit is then leveraged by thesystem as a fundamental unit of measure to control arrangement and/orsizing of digital content in relation to each other. A user input, forinstance, may be received to set an amount of space before or after aparagraph, an amount of leading, indent, margins, baseline shift, adocument grid, ruler guides, and so on as units of the baseline grid. Inthis way, the display characteristics may be tied to an actual page usedto display the digital content, which is not possible using conventionaltechniques that are based on standardized units of measure that areindependent of the page.

Conventional techniques to evenly space baselines within a page, forinstance, require a user to manually engage in a trial-and-error toarrive at an even spacing of baselines within the page, the spacing ofwhich is defined using points, e.g., 1.3 pixels. Likewise, font sizesand spacing before and after paragraphs (i.e., “leading”) is alsodefined conventionally using points. Other display characteristics thatare defined using standardized units of measure (e.g., inches orcentimeters) suffer from similar challenges, e.g., to set margins orindentations. This problem is further exacerbated in conventionaltechniques when changes are made to the page, e.g., to change themargins or page size which may require manual re-computation of each ofthese display characteristics.

In the techniques described herein, however, the digital content designsystem automatically generates baselines within an available displayarea in response to a user input. A user input, for instance, may bereceived the specify nine baselines, which are then evenly spaced by thedigital content design system within an available content display areaof the page, e.g., within margins of the page, based on a “start at”value, the page as a whole, and so on. The digital content design systemmay also automatically adjust each of these display characteristics whenchanges are made to the baseline unit, e.g., a spacing betweenbaselines. In this way, the digital content design system may improveuser interaction and use of computational resources of a computingdevice that employs these techniques.

In the following discussion, an example environment is first describedthat may employ the techniques described herein. Example procedures arealso described which may be performed in the example environment as wellas other environments. Consequently, performance of the exampleprocedures is not limited to the example environment and the exampleenvironment is not limited to performance of the example procedures.

Example Environment

FIG. 1 is an illustration of a digital medium environment 100 in anexample implementation that is operable to employ digital content designtechniques described herein that employ baseline units to controlarrangement and sizing of digital content. The illustrated environment100 includes a service provider system 102 and a computing device 104that are communicatively coupled, one to another, via a network 106. Avariety of computing device configurations may be used to implement theservice provider system 102 and/or computing device 104.

A computing device, for instance, may be configured as a desktopcomputer, a laptop computer, a mobile device (e.g., assuming a handheldconfiguration such as a tablet or mobile phone as illustrated), and soforth. Thus, a computing device may range from full resource deviceswith substantial memory and processor resources (e.g., personalcomputers, game consoles) to a low-resource device with limited memoryand/or processing resources (e.g., mobile devices). Additionally,although a single computing device is shown, a computing device may berepresentative of a plurality of different devices, such as multipleservers utilized by a business to perform operations “over the cloud” asshown for the service provider system 102 and as described in FIG. 28.

The computing device 104 is illustrated as including a communicationmodule 108 that is configured to communicate and support interactionwith the service provider system 102. The communication module 108, forinstance, may be configured as a web browser, a network-enabledapplication, and so on to access a digital content design system 114 viathe network 106. The computing device 104 is also illustrated asincluding a user interface 110 as rendered by a display device 112 thatsupports user interaction, e.g., through use of a cursor control device,spoken utterances, touchscreen functionality, through use of a naturaluser interface, and so forth. Although functionality to generate adigital content design system 114 usable to generate and implement adigital content design 116 is described in the following as implementedby the service provider system 102, this functionality may beimplemented partially or as a whole by the computing device 104, e.g.,through local execution by a processing system and computer-readablestorage media.

The digital content design system 114 is further illustrated asincluding functionality to maintain, manage, and distribute digitalcontent 118, which is illustrated as stored by a storage device 120.Digital content 118 may take a variety of forms, such as digital images122, text 124, digital media 126 (e.g., vector graphics, illustrations,digital videos, digital audio), and so forth. Although illustratedincluded as part of the digital content design system 114, thisfunctionality may also be incorporated separately (e.g., remotely) fromthe system, e.g., locally by the computing device 104.

The digital content design system 114 also includes a layout system 128that is configured to generate and maintain a layout of the digitalcontent design 116. Accordingly, a creative professional may interactwith the digital content design system 114 via the computing device 104to create a digital content design 116 that is usable to supportarrangement of digital content 118. The creative professional, forinstance, may select items of digital content 118 and arrange and sizethese items in relation to each other as part of creating the digitalcontent design 116 through interaction with the user interface 110.

As part of this, the layout system 128 includes a baseline system 130that is usable to aid generation of a layout of the digital content 118as part of the digital content design 116. To do so, the baseline system130 calculates, updates, and manages a baseline unit 132 that defines afundamental unit of a page 134 that is to be used to control arrangementand/or size of display characteristics of the digital content 118 withina page 134. The page 134, for instance, includes an amount of availablecontent display area 136 that is usable to display digital content 118,e.g., within defined margins of the page 134.

In the illustrated example, the page 134 is configured to mimic notebookpaper that includes a plurality of baselines 138 which are displayed ashorizontal visual guides as rendered in the user interface 110. Thebaselines 138 are used to align and/or size digital content 118 such astext 124, e.g., where each letter of the text is positioned onto thebaselines 138 similar to writing in a ruled notebook.

The baseline unit 132 is calculated by the baseline system 130 based ondistance used to space these baselines 138 within the available displayarea 136, one from another. This may then be used, along with userinputs, to define display characteristics of the digital content 118such that these display characteristics are tied to the page 134.Defining the display characteristics using the baseline unit 132 as afundamental unit of measure ensures that when dimensions or sizing ofthe available display area 136 within a page changes, these changes areautomatically populated to the corresponding display characteristics.This is not possible using conventional techniques in which a unit ofmeasure used to define these display characteristics is independent ofthe page, e.g., using points, inches, centimeters, and so on. Thus,these techniques increase user and well as computational efficiency bypermitting changes in real time to display characteristics based onchanges to the underlying baseline unit 132.

In general, functionality, features, and concepts described in relationto the examples above and below may be employed in the context of theexample procedures described in this section. Further, functionality,features, and concepts described in relation to different figures andexamples in this document may be interchanged among one another and arenot limited to implementation in the context of a particular figure orprocedure. Moreover, blocks associated with different representativeprocedures and corresponding figures herein may be applied togetherand/or combined in different ways. Thus, individual functionality,features, and concepts described in relation to different exampleenvironments, devices, components, figures, and procedures herein may beused in any suitable combinations and are not limited to the particularcombinations represented by the enumerated examples in this description.

Digital Content Design System Using Baseline Units

FIG. 2 depicts a system 200 in an example implementation showingoperation of the digital content design system 114 of FIG. 1 in greaterdetail as generating a digital content design in which baseline unitsare used to guide arrangement and sizing of digital content within thedesign. FIG. 3 depicts a procedure 300 in an example implementation inwhich a baseline unit is calculated based on a number of baselinesdistributed within a page and used to control display characteristics ofdigital content 118 within the page.

The following discussion describes techniques that may be implementedutilizing the previously described systems and devices. Aspects of theprocedure may be implemented in hardware, firmware, software, or acombination thereof The procedure is shown as a set of blocks thatspecify operations performed by one or more devices and are notnecessarily limited to the orders shown for performing the operations bythe respective blocks. In portions of the following discussion,reference will be made interchangeably to FIGS. 3-4 and continuesthroughout the remaining figures.

To begin, a baseline generation module 202 of the layout system 126receives a page 204 having an available content display area 206, e.g.,a space between top and bottom and/or left and right margins. A firstinput 208 is received by the baseline generation module 202 thatspecifies a number of baselines to be generated for a page in a userinterface (block 302). The first input 208, for instance, may bereceived via a user interface 110 from a user that specifies the numbervia text entry, a spoken utterance, gesture, and so forth.

The number of baselines is generated by the baseline generation module202 within a defined region for the page (block 304), e.g., an availablecontent display area 136 within defined margins of the page 134. To doso, the baseline generation module 202 calculates a distance betweenconsecutive baselines to evenly space the baselines within the definedregion. The distance between the baselines depends on a number ofbaselines as specified by the first input 208 and an amount of displayarea available along an axis, along which, the baselines are to bespaced, e.g., an effective page height.

In one example, a number of baseline units specified by the first input208 is denoted as “no_of_baselines” and the effective page height thatcontains the baselines is denoted as “effective_height.” The effectivepage height is based on values of “start” and “relative to” as shown inan example implementation 400 of FIG. 4. As shown in an exampleimplementation 500 of FIG. 5, a value of “relative to” may have twovalues, e.g., “start from” and “relative to,” and in the following thevariables of “top_of_page” and top_margin” are used to denote them. Thetechnique depicted in FIG. 4 is implemented by the baseline generationmodule 202 to determine spacing and placement of baselines within theavailable content display area. As depicted, baseline units are updatedautomatically based on the distance, at which, the baselines are spacedin response to detected changes in a size of the available contentdisplay area.

The page 204 and number of baselines 210 are then passed to a baselineunit calculation module 212 that is configured to calculate a baselineunit 214 from a distance used to space adjacent baselines of the numberof baselines within the user interface (block 306). An example 600 of atechnique usable to calculate and set the baseline unit 214 as afundamental unit of measure of display characteristics is depicted inFIG. 6.

The baselines and baseline units may also be employed as part of abaseline grid formed from sets of baselines that are disposed ingenerally perpendicular directions to each other, e.g., horizontally andvertically. To do so, horizontal and vertical divisions are generated,which may be denoted as “horizontal_gridline_every” and“vertical_gridline_every,” respectively. The baseline grid may bedistributed using a variety of ratios, such as a golden ratio, a squareratio, or a custom ratio as specified by user input via a drop downmenu. An example of a user interface 700 usable to provide a first inputto specify the number of baselines to be employed horizontally andvertically to form a baseline grid is depicted in FIG. 7.

FIG. 8 depicts an example technique 800 usable to space baselines toform a baseline grid based at least in part on a custom ratio, a squareratio, or a golden ratio defined within an available content displayarea within a page. Like the previous example, the document grid may beupdated by the baseline generation module 202 and baseline unitcalculation module 212 due to changes to “baseline_distance” in thisexample.

Return will now be made again to FIG. 2, in which the baseline unit 214as calculated by the baseline unit calculation module 212 is passed tothe content display control module 216 to control displaycharacteristics 218 by using the baseline unit 214 as a unit of measure.In this way, updates to the baseline unit 214 may be automaticallypopulated to the display characteristics 218 such that a digital contentdesign 116 is generated that include a page 204 in which a displaycharacteristic is defined as having an amount based on the baseline unit220.

For example, a second input 22 is received by the content displaycontrol module 216 that specifies an amount of a display characteristicinvolving arrangement or sizing of digital content within the page. Theamount is defined in relation to the baseline unit (block 308). Theamount of the display characteristic is then controlled automaticallyand without user intervention involving the arrangement or sizing of thedigital content within the page based on the baseline unit (block 310).Examples of display characteristics 218 that are definable in relationto a baseline unit 214 include spacing before and after 224 a block oftext (e.g., a paragraph), leading 226, indent 228, margins, bleed, slug230, baseline shift, 232, spacing of a baseline grid 234 horizontallyand/or vertically, ruler guides 236, and other 238 displaycharacteristics. Another example 900 of providing the second input 222is depicted in FIG. 9 in which baseline units are used to specify a fontsize.

In this way, a creative professional may begin creation of the digitalcontent design 116 by selecting a page 204 having a height and width ormanually specifying a size of the page 204. In order to createbaselines, a first input 208 is provided through interaction with a userinterface 110 to specify a number of baselines 210. The number ofbaselines 210 are then generated automatically and without userintervention by the baseline generation module 202 without any othercalculations by the creative professional, which are distributed equallyacross the page 204 in an example.

The baseline unit calculation module 212 then generates a baseline unit214 “bl” from a distance used to space adjacent baselines of the numberof baselines 210. The baseline unit 214 is then used by the contentdisplay control module 126 as a fundamental unit and may be updatedautomatically in response to changes in the available content displayarea and as such, may cause these updates to be automatically propagatedto the display characteristics 218.

For example, consider a page 204 as having a height of five hundredpoints and a width of three hundred points. A creative professional maythen provide a first input 208 of “number of baselines” as fifty. Thisresults in calculation of a baseline unit 214 as equal to “500/50=10points.” The creative professional may then provide the second input 222to specify amounts of display characteristics based on this baselineunit 2124 “bl.” Margins, for instance, may be set as “four baselineunits” from each edge of the page 204. A font size may also be definedas “two baselines units” with a leading as “three baseline units.” Sizesof digital content and positioning may also be defined using baselineunits as shown in an example implementation 1000 of FIG. 10.

The creative professional may then wish to increase a size of the page204 to have a height of seven hundred points and a width of four hundredpoints. In response, the baseline unit calculation module 212automatically updates the baseline unit 214 “bl” to have a size of“700/50=14 points.” This change in the baseline unit 214 causes thecontent display control module 216 to automatically update the displaycharacteristics 218 that are defined based on the baseline unit 214.

FIG. 11 depicts an example 1100 of automated adjustment of the displaycharacteristics of a page of FIG. 10 based on a change in the baselineunit 214. As depicted, a font size is still defined as three baselineunits, but is larger in size such that the font remains proportional toan increase in size of the page.

FIG. 12 depicts an implementation 1200 of automated adjustment ofleading as spacing between items of digital content. In a first example1202, an amount of leading is set to “3 bl” and in a second example 1204an amount of leading is set as “4 bl.” Leading specifies an amount of agap or space that is used to space items of digital content (e.g., linesof text) from each other.

FIG. 13 depicts an example 1300 user interface usable to assign anamount of space before or after paragraphs using baseline units. FIG. 14depicts another example 1400 of a display characteristic of font sizethat is defined using baseline units. As illustrated, the font size isset to “0.5 baseline units” and thus a size of the font has half thevalue of a baseline unit that is defined for the page. Similarly, a fontsize may be set to “2.0 baselines units” and thus a size of the font hasdouble a value of a baseline unit as shown in an example 1500 of FIG.15.

This provides increased flexibility and efficiency in user interactionwith the digital content design system 114 in that the creativeprofessional may easily set up and change display characteristics ofdigital content and amounts of a content display area that is availableto display this digital content. Thus, the techniques and systemsdescribed herein may overcome a variety of challenges of conventionaldesign techniques.

FIG. 16 depicts an example implementation 1600 showing use of a baselineunit as preventing unequal spacing being left at a top or bottom edge ofa page while setting up a baseline grid. Conventional techniques definespacing between baselines using units of measure that are independent ofa size of a page, e.g., points, centimeters, inches, and so forth.Therefore, in practice unusable gaps are typically introduced whenspacing baselines based on mistakes caused by user computation ofspacing between the baselines. In the illustrated example, however, afirst input 208 specifying a number of baselines as equal to ten causesthe baseline generation module 202 to generate ten baselines to bedistributed evenly over an available content display area for a pageautomatically and without user intervention and thus without requiringmanual calculations by a user that may be prone to error.

Additionally, conventional techniques used to specify baseline gridsusing standards of measurement that are independent of sizing of a pagealso involved numerous challenges. FIG. 17, for instance, depicts priorart 1700 examples of leading and spacing values set using a number ofpoints. In a first example 1702, spacing of baselines is set to thirtypoints and leading is set as eighteen points, this causes a distancebetween baselines used to arrange text to be correct set at 18 points nomatter the baseline value. In the second example 1704, the text is nowset to “snap to baseline grid” then the leading values are not honoredsince the text lines are at a distance of thirty points instead ofeighteen points, which may confuse a creative professional. In a thirdexample 1706, a creative professional changes the leading value to alarger distance, e.g., forty eight points, which causes the text toalign to a nearest baseline instead of honoring the leading options. Inthis scenario, the “n+1^(th)” set of text snaps to the third baselineafter the “n^(th)” line since forty eight points will skip the firstbaseline and the next baseline is baseline 2 which is the thirdbaseline.

FIG. 18 depicts an example implementation 1800 in which baseline unitsare used to define how much of a gap is disposed between adjacent linesof text. In the illustrated example, an amount of leading between linesof text is defined as using a number of baselines as “3 bl” opposed todefinition using standardized units of measure, such as points, picas,inches, and so forth. Thus, as before this amount may changeautomatically and without user intervention based on changes to a page,which is not possible using conventional techniques.

Likewise, FIG. 19 depicts an example implementation 1900 in which anamount of space before or after digital content (e.g., a paragraph) isset based on baseline units. As previously described, other examples arealso contemplated, such as first line indent and font size which isfurther described below.

FIG. 20 depicts an example implementation 2000 in which font size isdefined using baseline units. One of the challenges in creating digitalcontent designs is to find an appropriate font size for text.Accordingly, in the techniques described herein the font size respondsto a page size. Thus, instead of use of a conventional “increment every”value, a size of the font based on a baseline grid changes in responseto changes in an available content display area of a page, e.g., thepage as a whole, an area within defined margins, and so forth.

In a first example 2002, consider a page in which a number of baselinesis set such that a distance between the baselines is twenty points. Afont size set as two baseline units causes a glyph height of fortypoints. If a creative professional then decreases a height of the pagein half, the number of baselines is preserved. This then results achange in distance, and a change in baseline unit, from twenty points toten points as shown in the second example 2004. Thus, automaticadjustment of the baseline unit is propagated to the font size. As aresult, a creative professional may freely experiment with differentlayouts because the number of baselines remains preserved which makesthe baseline unit correspond to dimensions of the page.

FIG. 21 depicts an example implementation 2100 of addressing unequalspacing of conventional techniques by the layout system 126. Aspreviously described, conventional techniques used to specify spacingrelied on standardized units of measure. Thus, these conventionaltechniques relied on an ability of a creative professional to determinethe spacing, which is often inaccurate.

As shown in a conventional example 2102, consider a page with a heightof ten inches. A creative professional may then desired to divide thispage into baselines by specifying an “increment every” option at threeinches and starting at zero inches with respect to a top of the page.This leads to creations of baselines with a fragmented space left at abottom of the page which is unusable to incorporate content and is notvisually pleasing. In an example 2104 of the techniques describedherein, however, the layout system 126 controls the spacing to preservea number of baselines specified for the page. Accordingly, each of thebaselines are spaced equally, one to another, leaving no unusable spacesat the bottom of the page.

FIG. 22 depicts an example implementation 2200 in which placement of aninitial baseline within a baseline grid is shown. As shown at example2202, a page has a height of six hundred points and a width of fivehundred points. The baselines are set with a start of zero and incrementevery sixty points. If a creative professional then desires to change astart position, e.g., to thirty points, as shown at a secondconventional example 2204 this causes redistribution of the baselinesand ruins equal spacing of the baselines. This may also affectdistribution of the baselines into additional pages. This forces thecreative professional in conventional techniques to manually recalculatethe spacing, which is inefficient and prone to error.

As shown at third and fourth examples 2206, 2208, however, a number ofbaselines included on the page is preserved regardless of a “start at”value. Like the first example 2202, the page of the third example 2206has dimensions of a height of six hundred points and a width of fivehundred points and is configured to include nine baselines. The thirdexample 2206 includes a “start at” value of one hundred and fiftypoints, which is then changed to two hundred points for the fourthexample 2208. The number of baselines remains constant, thereby avoidingthe requirement of manual re-computation by the creative professional asrequired using conventional techniques.

Baseline units leveraged by the layout system 126 may also be used toenforce specific ratios, such as a golden ratio, square ratio, pageratio, and so on. This is not possible using conventional techniques.FIG. 23, for instance, depicts an example implementation 2300 in which alayout grid is defined using baseline units as distributed according toa golden ratio. The golden ratio is a mathematical relationship(approximately 1.618) often spotted in nature and is valued forfamiliarity and visually pleasing proportions. This ratio creates avisually harmonious balance and defines where second and tertiaryinformation, such as sidebars, are positioned and what size is to beemployed and enforces a modular scale for a digital content design.

FIG. 24 depicts an example implementation 2400 in which a layout grid isdefined using baseline units as distributed according to a square ratio.Likewise, a square ratio is usable to create natural lookingcompositions that are visually pleasing to the eye. Use of the squareratio ensures a natural sense of correct composition which “feels right”mathematically. Other examples are also contemplated, such as to enforcea “rule of thirds.” These layouts are not possible using conventionaltechniques that requires creative professionals to define spacingmanually using units of measure that are independent of a page, onwhich, content is to be disposed.

Thus, the techniques described herein also permit a correlation betweendocument grid size and distances used to distribute gridlines within thegrid, which is not possible using conventional techniques. For example,a creative designer may with to align document grids with baseline gridsto permit snapping behavior with respect to horizontal lines in adocument grid, such as to align text and other objects of digitalcontent uniformly within a page. In conventional techniques, this may bedifficult if not impossible to perform.

In one conventional example, a page has a height of six hundred pointsand a width of five hundred points. The baseline grid is created with a“start at” value of zero points and “increment every” is set at fiftypoints. With careful calculations, a creative professional may manage toinitially overlap the baseline grid with the document grid. However, achange to the “increment every value from forty to fifty points wouldcause lines of the document grid to no longer align with the baselinegrid.

Accordingly, the techniques described herein support an option to link adocument grid's distribution to baselines forming a baseline grid. Asshown in an example implementation 2500 of FIG. 25, for instance, at afirst example 2502 a page is configured as having a height of sixhundred points, a width of five hundred points with a “start at” valueof zero and a “number of baselines” set as fifteen, which gives adistance and thus a baseline unit of forty points. If a value of the“number of baselines” is decreased to twelve, the layout system 146automatically redistributes baselines of the document grid based on anupdated baseline unit value of fifty, as shown at the second example2504. Further, since a distance between the baselines of the grid hasincreased from forty to fifty points, spacing of horizontal baselines ofthe grid also has an increased distance to address this change.

In another example, a “gridline every” value is supported to definehorizontal and/or vertical gridlines using baseline units as a unit ofmeasure. A page, for instance, may have a defined height of five hundredpoints with ten baselines generated beginning from a “start at” value ofone hundred points. The available display area of the page is thus fourhundred points and hence a distance between each baseline is calculatedas forty points. If the “gridline every” field is set to two baselineunits, then the grid's horizontal spacing is updated to eighty points bythe system.

Similarly, if a horizontal “gridline every” field is set to half of abaseline unit, then the grid's horizontal spacing is set at twentypoints in this example This ensures that the document grid isdistributed as a multiple of baseline units and thus aligns to thebaselines even if the number of baselines over the page is changed. Inthis way, the layout system 146 supports increased user andcomputational efficiency of the computing device 104.

FIG. 26 depicts an example implementation 2600 of a user preferencecontrol by the layout system 146 to automatically adjust margins toalign with a document grid. Use of this control causes margins of thepage to overlap a nearest document grid line. Therefore, if the baselinegrid is created from “top of the page” then each of the margins may besnapped to the document grid. If the baseline grid is created from “topof margin” then the left and right margins are snapped to the documentgrid.

In another example, top and bottom spacing of margins is defined usingbaseline units. For example, a page with a height of five hundred pointsand ten baselines constructed at a “start at” value of one hundredpoints has a distance between the baselines of forty points. If a margininset is set to “0.2 baseline units,” then the margins are drawn ateight points in the page. Accordingly, a change to a value of a baselineunit also causes a change to the margins.

FIG. 27 depicts an example implementation in which a document grid isadjusted automatically and without user intervention by the layoutsystem 146 in response to changes in size of an available contentdisplay area of a page. Consider a page with a height and width oftwenty centimeters. A corresponding document grid is set to havevertical and horizontal grid distance of two centimeters. If a documentpage height and width are then changed to 17 cm as shown for a firstconventional example 2702, the document grid “spills outside” a pageedge from both the bottom and right edges.

In the second example 2704 of the baseline unit techniques describedherein, however, the document grid is automatically readjusted by thelayout system 146 to automatically fit an available content displayarea. Continuing with the previous example, resizing of the documentgrid is shown such that the document grid box does not “spill out” froma bottom edge or side edge, but rather continues according to a userspecified ratio. A variety of other examples are also contemplatedwithout departing from the spirit and scope thereof.

Example System and Device

FIG. 28 illustrates an example system generally at 2800 that includes anexample computing device 2802 that is representative of one or morecomputing systems and/or devices that may implement the varioustechniques described herein. This is illustrated through inclusion ofthe digital content design system 114. The computing device 2802 may be,for example, a server of a service provider, a device associated with aclient (e.g., a client device), an on-chip system, and/or any othersuitable computing device or computing system.

The example computing device 2802 as illustrated includes a processingsystem 2804, one or more computer-readable media 2806, and one or moreI/O interface 2808 that are communicatively coupled, one to another.Although not shown, the computing device 2802 may further include asystem bus or other data and command transfer system that couples thevarious components, one to another. A system bus can include any one orcombination of different bus structures, such as a memory bus or memorycontroller, a peripheral bus, a universal serial bus, and/or a processoror local bus that utilizes any of a variety of bus architectures. Avariety of other examples are also contemplated, such as control anddata lines.

The processing system 2804 is representative of functionality to performone or more operations using hardware. Accordingly, the processingsystem 2804 is illustrated as including hardware element 2810 that maybe configured as processors, functional blocks, and so forth. This mayinclude implementation in hardware as an application specific integratedcircuit or other logic device formed using one or more semiconductors.The hardware elements 2810 are not limited by the materials from whichthey are formed or the processing mechanisms employed therein. Forexample, processors may be comprised of semiconductor(s) and/ortransistors (e.g., electronic integrated circuits (ICs)). In such acontext, processor-executable instructions may beelectronically-executable instructions.

The computer-readable storage media 2806 is illustrated as includingmemory/storage 2812. The memory/storage 2812 represents memory/storagecapacity associated with one or more computer-readable media. Thememory/storage component 2812 may include volatile media (such as randomaccess memory (RAM)) and/or nonvolatile media (such as read only memory(ROM), Flash memory, optical disks, magnetic disks, and so forth). Thememory/storage component 2812 may include fixed media (e.g., RAM, ROM, afixed hard drive, and so on) as well as removable media (e.g., Flashmemory, a removable hard drive, an optical disc, and so forth). Thecomputer-readable media 2806 may be configured in a variety of otherways as further described below.

Input/output interface(s) 2808 are representative of functionality toallow a user to enter commands and information to computing device 2802,and also allow information to be presented to the user and/or othercomponents or devices using various input/output devices. Examples ofinput devices include a keyboard, a cursor control device (e.g., amouse), a microphone, a scanner, touch functionality (e.g., capacitiveor other sensors that are configured to detect physical touch), a camera(e.g., which may employ visible or non-visible wavelengths such asinfrared frequencies to recognize movement as gestures that do notinvolve touch), and so forth. Examples of output devices include adisplay device (e.g., a monitor or projector), speakers, a printer, anetwork card, tactile-response device, and so forth. Thus, the computingdevice 2802 may be configured in a variety of ways as further describedbelow to support user interaction.

Various techniques may be described herein in the general context ofsoftware, hardware elements, or program modules. Generally, such modulesinclude routines, programs, objects, elements, components, datastructures, and so forth that perform particular tasks or implementparticular abstract data types. The terms “module,” “functionality,” and“component” as used herein generally represent software, firmware,hardware, or a combination thereof. The features of the techniquesdescribed herein are platform-independent, meaning that the techniquesmay be implemented on a variety of commercial computing platforms havinga variety of processors.

An implementation of the described modules and techniques may be storedon or transmitted across some form of computer-readable media. Thecomputer-readable media may include a variety of media that may beaccessed by the computing device 2802. By way of example, and notlimitation, computer-readable media may include “computer-readablestorage media” and “computer-readable signal media.”

“Computer-readable storage media” may refer to media and/or devices thatenable persistent and/or non-transitory storage of information incontrast to mere signal transmission, carrier waves, or signals per se.Thus, computer-readable storage media refers to non-signal bearingmedia. The computer-readable storage media includes hardware such asvolatile and non-volatile, removable and non-removable media and/orstorage devices implemented in a method or technology suitable forstorage of information such as computer readable instructions, datastructures, program modules, logic elements/circuits, or other data.Examples of computer-readable storage media may include, but are notlimited to, RAM, ROM, EEPROM, flash memory or other memory technology,CD-ROM, digital versatile disks (DVD) or other optical storage, harddisks, magnetic cassettes, magnetic tape, magnetic disk storage or othermagnetic storage devices, or other storage device, tangible media, orarticle of manufacture suitable to store the desired information andwhich may be accessed by a computer.

“Computer-readable signal media” may refer to a signal-bearing mediumthat is configured to transmit instructions to the hardware of thecomputing device 2802, such as via a network. Signal media typically mayembody computer readable instructions, data structures, program modules,or other data in a modulated data signal, such as carrier waves, datasignals, or other transport mechanism. Signal media also include anyinformation delivery media. The term “modulated data signal” means asignal that has one or more of its characteristics set or changed insuch a manner as to encode information in the signal. By way of example,and not limitation, communication media include wired media such as awired network or direct-wired connection, and wireless media such asacoustic, RF, infrared, and other wireless media.

As previously described, hardware elements 2810 and computer-readablemedia 2806 are representative of modules, programmable device logicand/or fixed device logic implemented in a hardware form that may beemployed in some embodiments to implement at least some aspects of thetechniques described herein, such as to perform one or moreinstructions. Hardware may include components of an integrated circuitor on-chip system, an application-specific integrated circuit (ASIC), afield-programmable gate array (FPGA), a complex programmable logicdevice (CPLD), and other implementations in silicon or other hardware.In this context, hardware may operate as a processing device thatperforms program tasks defined by instructions and/or logic embodied bythe hardware as well as a hardware utilized to store instructions forexecution, e.g., the computer-readable storage media describedpreviously.

Combinations of the foregoing may also be employed to implement varioustechniques described herein. Accordingly, software, hardware, orexecutable modules may be implemented as one or more instructions and/orlogic embodied on some form of computer-readable storage media and/or byone or more hardware elements 2810. The computing device 2802 may beconfigured to implement particular instructions and/or functionscorresponding to the software and/or hardware modules. Accordingly,implementation of a module that is executable by the computing device2802 as software may be achieved at least partially in hardware, e.g.,through use of computer-readable storage media and/or hardware elements2810 of the processing system 2804. The instructions and/or functionsmay be executable/operable by one or more articles of manufacture (forexample, one or more computing devices 2802 and/or processing systems2804) to implement techniques, modules, and examples described herein.

The techniques described herein may be supported by variousconfigurations of the computing device 2802 and are not limited to thespecific examples of the techniques described herein. This functionalitymay also be implemented all or in part through use of a distributedsystem, such as over a “cloud” 2814 via a platform 2816 as describedbelow.

The cloud 2814 includes and/or is representative of a platform 2816 forresources 2818. The platform 2816 abstracts underlying functionality ofhardware (e.g., servers) and software resources of the cloud 2814. Theresources 2818 may include applications and/or data that can be utilizedwhile computer processing is executed on servers that are remote fromthe computing device 2802. Resources 2818 can also include servicesprovided over the Internet and/or through a subscriber network, such asa cellular or Wi-Fi network.

The platform 2816 may abstract resources and functions to connect thecomputing device 2802 with other computing devices. The platform 2816may also serve to abstract scaling of resources to provide acorresponding level of scale to encountered demand for the resources2818 that are implemented via the platform 2816. Accordingly, in aninterconnected device embodiment, implementation of functionalitydescribed herein may be distributed throughout the system 2800. Forexample, the functionality may be implemented in part on the computingdevice 2802 as well as via the platform 2816 that abstracts thefunctionality of the cloud 2814.

CONCLUSION

Although the invention has been described in language specific tostructural features and/or methodological acts, it is to be understoodthat the invention defined in the appended claims is not necessarilylimited to the specific features or acts described. Rather, the specificfeatures and acts are disclosed as example forms of implementing theclaimed invention.

What is claimed is:
 1. In a digital content creation environment, amethod implemented by at least one computing device, the methodcomprising: identifying, by the at least one computing device, a numberof baselines within a defined region in a user interface; calculating,by the at least one computing device, a baseline unit as a unit ofmeasure, the baseline unit defined as a distance used to space adjacentbaselines of the number of baselines; receiving, by the at least onecomputing device, a user input specifying an amount to set a displaycharacteristic; and controlling, by the at least one computing deviceautomatically and without user intervention responsive to the userinput, the amount of the display characteristic for digital content inthe user interface using the baseline unit as the unit of measure. 2.The method as described in claim 1, wherein the defined region isincluded within specified margins for the page or defined using a startat value.
 3. The method as described in claim 1, wherein the number ofbaselines is distributed evenly, one to another, over the defined regionalong a defined axis in the user interface.
 4. The method as describedin claim 1, wherein the display characteristic is a font size of thedigital content.
 5. The method as described in claim 1, wherein thedisplay characteristic is spacing before or after the digital content ona respective said baseline.
 6. The method as described in claim 1,wherein the display characteristic is an amount of indent of the digitalcontent.
 7. The method as described in claim 1, wherein the displaycharacteristic includes spacing of a document grid.
 8. The method asdescribed in claim 1, wherein the display characteristic includesspacing of a ruler guide.
 9. The method as described in claim 1, whereinthe display characteristic includes a margin of the page.
 10. In adigital content design creation environment, a system comprising: abaseline generation module implemented at least partially in hardware ofat least one computing device to generate a number of baselines based atleast in part on an available display area for a page in a userinterface; a baseline unit calculation module implemented at leastpartially in hardware of the at least one computing device to calculatea baseline unit as a unit of measure, the baseline unit defined as adistance of an amount of separation between two of the baselinesgenerated for the page that are adjacent, one to another; and a contentdisplay control module implemented at least partially in hardware of theat least one computing device to control an amount of a displaycharacteristic defined in relation to the baseline unit.
 11. The systemas described in claim 10, wherein the display characteristic involvingarrangement or sizing of digital content within the page or a font sizeof the digital content.
 12. The system as described in claim 10, whereinthe display characteristic is spacing before or after the digitalcontent on a respective said baseline.
 13. The system as described inclaim 10, wherein the display characteristic is an amount of indent ofthe digital content.
 14. The system as described in claim 10, whereinthe display characteristic includes spacing of a document grid.
 15. Thesystem as described in claim 10, wherein the display characteristicincludes spacing of a ruler guide.
 16. The system as described in claim10, wherein the display characteristic includes a margin that isdisposed outside the available display area within the page.
 17. In adigital content design creation environment, a system comprising: meansfor identifying a number of baselines within a defined region in a userinterface; means for calculating a baseline unit as a unit of measure,the baseline unit defined as a distance used to space adjacent baselinesof the number of baselines; means for receiving a user input specifyingan amount to set a display characteristic; and means for controlling,automatically and without user intervention responsive to the userinput, the amount of the display characteristic for digital content inthe user interface using the baseline unit as the unit of measure. 18.The system as described in claim 17, wherein the display characteristicis a font size of the digital content.
 19. The system as described inclaim 17, wherein the display characteristic is spacing before or afterthe digital content on a respective said baseline.
 20. The system asdescribed in claim 17, wherein the display characteristic is an amountof indent of the digital content.